Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUGFIX] Question 조회 시 QuestionId 가 null로 오는 버그 해결 #459

Merged
merged 1 commit into from
Nov 29, 2024

Conversation

mooncw
Copy link
Collaborator

@mooncw mooncw commented Nov 28, 2024

PR 타입 (하나 이상의 PR 타입을 선택해주세요)

  • 기능 추가
  • 기능 삭제
  • 버그 수정
  • 문서 수정
  • 리팩토링
  • 스타일 수정
  • 테스트 코드 추가
  • 의존성, 환경 변수, 빌드 관련 코드 업데이트
  • 개발 환경 세팅

변경 사항

  • Projection 대상 클래스인 QuestionInfo.Detail의 멤버 변수 questionId를 id로 변경함으로써 매핑이 되도록 수정
  • QuestionInfo.Detail의 변경됨에 따라 관련 로직 수정

참고 사항

  • 관련 이슈 번호: [BUG] 문제 조회 시 question Id가 null로 옴 #457
  • Question Document 의 id는 Projection 대상 클래스인 QuestionInfo.Detail의 멤버 변수에 동일한 이름인 id가 존재하지 않기 때문에 매핑이 되지 않아서 QuestionInfo.Detail의 questionId가 null이 되어서 발생한 버그입니다.
  • QueryDsl 없이 Spring Data MongoDB만 의존성을 추가했을 경우 Projection 하는 방법은 3가지가 있었습니다.
    1. 지금처럼 Projection 대상 클래스의 멤버 변수를 Document 필드 이름과 동일하게 구성
    1. Spring Data MongoDB 기능인 Projection Interface 생성
    1. MongoDB Converter 구현
  • 저는 MapStruct를 사용하고 있고, 현재 Info 구조에 1. 이 가장 낫다고 판단하여 1. 으로 해결했습니다.

셀프 체크리스트

  • 코드가 정상적으로 동작하는지 확인
  • 새로운 테스트를 추가했거나 기존 테스트를 통과하는지 확인
  • 코드 스타일 가이드에 맞게 포맷팅했는지 확인
  • 관련 문서를 업데이트했는지 확인

…록 수정

- QuestionInfo.Detail이 변경됨에 따라 관련 로직 수정
@mooncw mooncw added 🐞 BUGFIX 버그해결 🔖 CRITICAL Priority: CRITICAL 🌚 BE 🏀 CW Moon Chanwook labels Nov 28, 2024
@mooncw mooncw requested a review from tigris24 November 28, 2024 11:54
@mooncw mooncw self-assigned this Nov 28, 2024
@mooncw mooncw merged commit 7558d90 into dev Nov 29, 2024
@mooncw mooncw deleted the bugfix/#457/question-id-is-null branch November 29, 2024 00:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🌚 BE 🐞 BUGFIX 버그해결 🔖 CRITICAL Priority: CRITICAL 🏀 CW Moon Chanwook
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants